(function() {
    let currentPage = 0; // 当前页码
    const pageSize = 10; // 每页大小

    // 获取后台用户数据并更新表格
    function fetchAdminUsers(page) {
        fetch(`/api/admin/users?page=${page}&size=${pageSize}`)
            .then(response => response.json())
            .then(data => {
                const tableBody = document.getElementById('admin-table-body');
                tableBody.innerHTML = ''; // 清空表格内容

                // 遍历用户数据，生成表格行
                data.content.forEach(user => {
                    const row = document.createElement('tr');

                    // 用户名列
                    const usernameCell = document.createElement('td');
                    usernameCell.textContent = user.account;
                    row.appendChild(usernameCell);

                    // 密码列
                    const passwordCell = document.createElement('td');
                    passwordCell.textContent = user.password;
                    row.appendChild(passwordCell);

                    // 添加到表格
                    tableBody.appendChild(row);
                });

                // 更新分页控件
                updateAdminPagination(data.totalPages, page);
            })
            .catch(error => {
                console.error('Error fetching admin users:', error);
                alert('无法获取后台用户，请检查网络连接！');
            });
    }

    // 更新分页控件
    function updateAdminPagination(totalPages, currentPage) {
        const pagination = document.getElementById('admin-pagination');
        pagination.innerHTML = ''; // 清空分页按钮

        for (let i = 0; i < totalPages; i++) {
            const li = document.createElement('li');
            li.className = `page-item ${i === currentPage ? 'active' : ''}`;

            const a = document.createElement('a');
            a.className = 'page-link';
            a.href = '#';
            a.textContent = i + 1;
            a.onclick = () => {
                fetchAdminUsers(i); // 切换到对应页
            };

            li.appendChild(a);
            pagination.appendChild(li);
        }
    }

    fetchAdminUsers(0); // 获取第一页用户数据
})();